AI assistant for interacting with customers across multiple communication modes

ABSTRACT

A system and method for assisting with interactions between agents and customers using an artificially intelligent assistant is disclosed. The artificially intelligent assistant monitors interactions between agents and customers and identifies assistive actions to be taken that increase efficiency of the interaction as well as customer satisfaction. The artificially intelligent agent can also identify new communication modes appropriate for assistive actions, allowing agents to seamlessly communicate with customers over a wide range of different communication modes, such as phone calls, texts, emails and other messaging applications.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims benefit to U.S. patentapplication Ser. No. 16/419,042, filed on May 22, 2019 and titled “AIAssistant for Interacting with Customers Across Multiple CommunicationModes”, which application claims the benefit of U.S. Provisional PatentApplication Ser. No. 62/741,752, filed on Oct. 5, 2018 and titled “AIAssistant for Interacting with Customers Across Multiple CommunicationModes”, the disclosures of all of which applications are incorporated byreference herein in their entirety.

TECHNICAL FIELD

The present disclosure generally relates to a system and method forimproving customer interactions, and in particular to an artificialintelligence assistant that can assist an agent in communicating with acustomer over multiple different communication modes.

BACKGROUND

Customers often interact with one or more agents of a company to meet adesired need or goal. Customers can interact with sales agents to learnabout and purchase one or more services or products. Customers mayinteract with agents to obtain answers to questions. In the field ofinsurance, customers may interact with agents as part of an insuranceclaim process. Moreover, different interactions may take place overdifferent kinds of communication modes. Interactions can occur over thephone, by email or by text, for example.

Agents may use tools to facilitate customer interactions. Some of thesetools may be provided as part of a customer relationship management(CMR) software package. However, CMR software and related tools areoften customized for a particular task or communication mode. An agentmay need to manually initiate one set of processes for interactions thattake place over the phone, and another set of processes for interactionsthat take place through a chat-based service.

In addition, each customer interaction is treated as an individual eventwith little to no context. For each new interaction, access toinformation about previous interactions with the customer may be limitedor completely unavailable. This may result in a sense of discontinuityand frustration for a customer who may need to re-explain something todifferent agents at different times, and may also prevent the companyfrom observing a larger context within which customer information,including preferences and other trends, may be visible.

There is a need in the art for a system and method that addresses theshortcomings discussed above.

SUMMARY

In one aspect, a method of assisting an agent in interacting with acustomer over multiple communication modes, the assistance beingperformed by an artificially intelligent assistant, includes the stepsof monitoring the interaction between the agent and the customer, wherethe interaction occurs by a first communication mode. The method alsoincludes analyzing information related to the interaction and generatingan assistive action, the assistive action requiring the use of a secondcommunication mode that is different than the first communication mode.The method also includes performing the assistive action, where part ofperforming the assistive action includes establishing communication withthe customer through the second communication mode.

In another aspect, a method of assisting an agent in an interaction witha customer, the assistance being performed by an artificiallyintelligent assistant, includes the steps of monitoring the interactionbetween the agent and the customer and analyzing information related tothe interaction and generating an assistive action. The method alsoincludes notifying the agent about the assistive action and performingthe assistive action.

In another aspect, a method of assisting an agent in an interaction witha customer, the assistance being performed by an artificiallyintelligent assistant, includes the steps of retrieving a first set ofinformation about a previous interaction with the customer, monitoring acurrent customer interaction with an agent and extracting a second setof information related to the current customer interaction and analyzingthe first set of information and a second set of information andgenerating an assistive action. The method also includes notifying theagent about the assistive action and performing the assistive action.

Other systems, methods, features, and advantages of the disclosure willbe, or will become, apparent to one of ordinary skill in the art uponexamination of the following figures and detailed description. It isintended that all such additional systems, methods, features, andadvantages be included within this description and this summary, bewithin the scope of the disclosure, and be protected by the followingclaims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood with reference to the followingdrawings and description. The components in the figures are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the invention. Moreover, in the figures, likereference numerals designate corresponding parts throughout thedifferent views.

FIG. 1 is a schematic view of an embodiment of a claim management systemfor interacting with a customer;

FIG. 2 is a schematic view of a process for assisting an agent in aninteraction with a customer, according to an embodiment;

FIG. 3 is a schematic view of a process for assisting an agent in aninteraction with a customer, according to another embodiment;

FIG. 4 is a schematic view of components of a claim management systemand multiple communication modes between the claim management system anda customer, according to an embodiment;

FIG. 5 is a schematic view of a process for assisting an agent in aninteraction with a customer, where the process includes selectinganother communication mode, according to an embodiment;

FIGS. 6-8 are schematics view of steps in a process for assisting anagent by monitoring a phone call between the agent and a customer, andautomatically generating an email to be sent to the customer, accordingto an embodiment; and

FIG. 9 is a schematic view of a machine learning system that can betrained to identify an appropriate communication mode for interactingwith a customer, according to an embodiment.

DESCRIPTION OF EMBODIMENTS

The embodiments provide a system and method for assisting agents withcustomer interactions and/or for assistant agents in working throughcustomer driven processes such as insurance claim processes. Inparticular, the embodiments provide an artificially intelligent (AI)assistant that can monitor interactions between agents and customers,identify potential assistive actions that can help the agent with one ormore tasks, and perform one or more actions. The AI assistant can reducethe response time required for an agent to complete a task during acustomer interaction and thereby improve customer satisfaction. The AIassistant achieves this by leveraging information across differentcommunication modes (and at different times) to provide agents withadditional context and suggestions for further actions to meetidentified customer goals. The AI assistant can also reduce responsetime and improve customer satisfaction by identifying times when anagent needs to communicate with a customer through a differentcommunication mode and initiating actions to open and disseminateinformation to the customer through the different communication mode.Moreover, because the AI assistant may use information from previousinteractions and/or other contextual information that is not immediatelyavailable to an agent during an interaction, the AI assistant cananticipate actions that an agent might otherwise not consider.

As used herein, the terms “artificial intelligence” and “machinelearning” may be used to describe a variety of techniques in which analgorithm can learn to improve its performance on a task (for example,classifying images into different categories). The embodiments can makeuse of any known methods and systems in artificial intelligence and/ormachine learning.

The following embodiments provide systems and methods for assisting withinteractions between an agent and a customer. Though the embodimentsdepict these systems and methods in the specific context of processinginsurance claims, it may be appreciated that these systems and methodscan be applied to various other contexts as well. These other contextsinclude, but are not limited to: banking and financial services,consumer products, call centers, as well as other business sectors.

The term “agent” as used herein, refers to any representative of acompany that provides products or services. For example, in the contextof a company providing insurance, an agent could be an insurance agent,a claims adjuster or any other employee or contractor of the company.Agents could be human agents or virtual agents. In some cases, a companymay employ a mix of human and virtual agents, each type of agent beingdevoted to different sets of tasks. The term “customer” as used herein,refers to any beneficiary of services (or products) from a company. Itmay be appreciated that any principles described below for assistingwith interactions between an agent and a customer could also be appliedto interactions between agents and third party vendors.

FIG. 1 is a schematic view of an embodiment of a claim management system100 that facilitates interactions about insurance claims with a customer102 over a network 104. Claim management system 100 further includes anagent 110. In this embodiment, agent 110 is a human agent. Agent 110 maycommunicate with customer 102 to help prepare a new insurance claim,answer questions about an existing claim or perform other tasks relatedto the insurance claim process. Although FIG. 1 depicts a single agent110, it may be appreciated that in other embodiments multiple agents maybe involved in managing one or more insurance claims.

As discussed in further detail below, network 104 can comprise two ormore different kinds of networks capable of facilitating communicationover two more different kinds of communication modes. Communicationmodes may be routed through a communications gateway 120 (or portal)that provides the functionality for initiating, controlling and closingone or more communication modes between agent 110 and customer 102.Communications gateway 120 can be made accessible to agent 110 and/orother systems or services associated with claim management system 100.

Claim management system 100 may also include an intelligent claimsassistant 130 (also referred to as simply “assistant 130”). Intelligentclaims assistant 130 may be an artificially intelligent (AI) assistantthat can respond to actions by an agent and/or a customer. Assistant 130may be a virtual assistant that runs on a computer system. The term“computer system” refers to the computing resources of a singlecomputer, the partial computing resources of a single computer, aplurality of computers communicating with one another, or a network ofremote servers. In an exemplary embodiment, assistant 130 runs on atleast one server.

Assistant 130 may receive information from various sources, performvarious kinds of analyses and/or store data. In the embodiment of FIG.1, assistant 130 comprises software running one or more computingdevices 140 (for example, a server) that may be in communication withone or more databases 142. Databases 142 could be co-located withcomputing device 140 or could be remote databases that are accessible bycomputing device 140 over a network. Databases 142 can include any kindof storage devices, including but not limited magnetic, optical,magneto-optical, and/or memory, including volatile memory andnon-volatile memory.

Intelligent claims assistant 130 may send information to, and receiveinformation from, communications gateway 120. Additionally, intelligentclaims assistant 130 can communicate directly with agent 110, bypassingcommunications gateway 120. For example, intelligent claims assistant130 can send alerts and other messages to devices (for example,computers, tablets and cell phones) used by agent 110. In oneembodiment, assistant 130 could communicate with an agent 110 using achat application, even as the agent 110 is communicating with customer102.

FIG. 2 is a schematic view of a process for providing assistance to anagent, where the assistance is provided within the context of aninteraction between the agent and a customer. In one embodiment, thesteps depicted in FIG. 2 may be performed by an AI assistant, forexample, intelligent claims assistant 130. In other embodiments, one ormore steps could be accomplished by another system or entity, forexample, an agent.

In step 202, assistant 130 may monitor a current interaction between anagent and a customer. For example, in the present embodiment assistant130 has access to communications passing through communications gateway120, as shown in FIG. 1. Communication of various forms (for example,audible information and/or text-based information) between an agent anda customer may be received as inputs to assistant 130 for furtherprocessing. In some cases, information from the interaction could notonly be analyzed in real-time, but could also be stored for futureanalysis. For example, information from an interaction could be storedin a database (for example, databases 142) for later retrieval byassistant 130 or an associated system.

In some cases, the step of monitoring the interaction may furtherinclude steps of filtering or otherwise pre-processing the informationto prepare the information for further analysis in later steps. In othercases, the step of monitoring the interaction may only include receivingraw communications data (for example, raw audio data, raw ASCII data, aswell as other kinds of data).

Next, in step 204, assistant 130 may analyze the information gatheredduring step 202 to determine if assistance is needed. This step couldinclude various kinds of analyses known in the art for processing spokenwords or text to identify context and meaning. In addition to analyzingthe content of the conversation between an agent and a customer,assistant 130 may also identify customer sentiment (for example, usingsentiment analysis techniques known in machine learning), vocal patternsand other information that may provide further context for deciding whenand what kind of assistance to provide. By understanding the context andmeaning of various parts of the interaction, assistant 130 can try toidentify potential needs of the customer or agent that may be fully orpartially met by actions that assistant 130 can take.

During the interaction, assistant 130 may also retrieve customer recordsto provide still further context. For example, if the conversation isregarding an insurance claim, assistant 130 may pull information aboutany insurance policies linked to the customer. This information may beused to decide the type of assistance that would be most useful for thecustomer.

The embodiments can make use of any techniques already known in thefield of natural language processing (NLP). These include any techniquesin speech recognition and natural language understanding. As an example,methods for training an AI to identify appropriate responses to naturallanguage inputs are known and may utilize advances in the field of deeplearning. For example, AIs may incorporate long short-term memory (LTSM)recurrent neural networks for learning to identify important contentwithin natural language data.

Using NLP techniques, an artificially intelligent assistant can betrained to identify points in an ongoing interaction where assistancemay be useful, and to select the appropriate type of assistance. In somecases, an assistant can be further trained to select appropriatecommunication modes for accomplishing a given task, as discussed infurther detail below. As a specific example, an AI assistant can betrained to output one of a set of possible assistive actions in responseto given inputs (for example, inputs in the form of interactioninformation between an agent and customer). The output could be providedby a neural network or any other kind of machine learning model orcollection of models.

If assistant 130 determines that assistance is not needed at step 206,assistant 130 returns to step 202 to further monitor the interaction.If, during step 206, assistant 130 determines that assistance is needed,assistant 130 proceeds to step 208. At step 208, assistant 130 maynotify the agent that assistant 130 of a potential assistive action, andin some cases, may perform the action after receiving confirmation fromthe agent. In some embodiments, notifying the agent could be optionaland assistant 130 may perform assistive actions immediately andautonomously without any input from the agent. In other embodiments,assistant 130 may only notify the agent of a suggested assistive action,and may leave it to the agent to perform the action. For example, anassistant could prepare a draft email message with information requestedby a customer and place the draft email in the agent's draft emailfolder, so that the agent can send the letter themselves at a latertime.

An interaction between an agent and a customer may be ongoing and is notlimited to a particular duration or single communication session. As anexample, customers and agents may communicate throughout the duration ofvehicle repairs at a repair facility. Often, agents do not receiveregular updates from the repair facility. Meanwhile, customer's may talkwith the repair facility and pass along information they learn as notesin an online claim tracking system. An AI assistant could monitor thetracking system for these notes. When new notes appear, the AI assistantcould retrieve the information and pass it along to the responsibleagent by way of an email along with a reminder to take action. Thisprocess could greatly improve the efficiency of the claim process asinformation is being delivered to the agents overseeing the claimsimmediately, rather than waiting for agents to manually check forinformation at irregular intervals.

FIG. 3 is a process for providing assistance to an agent, according toanother embodiment. The process depicted in FIG. 3 may include stepsthat are similar to the steps of the process show in FIG. 2.

In step 302 and step 304, assistant 130 may monitor an interaction anddetermine if assistance is needed as in step 202 and step 204 of theprocess depicted in FIG. 2. If no assistance is needed at step 306,assistant 130 may return to step 302 to continue monitoring theinteraction. If assistance is needed, assistant 130 proceeds from step306 to step 308.

At step 308, assistant 130 may retrieve information from a previousinteraction with the customer. The previous interaction could be anyinteraction that takes place at an earlier time. Moreover, the previousinteraction could be an earlier interaction with the same agent (forexample, agent 110), or with a different agent. Furthermore, theprevious interaction could have occurred on the same type ofcommunication mode or on a different type of communication mode.

Information from a previous interaction could include any kind ofinformation including, but not limited to: personal information aboutthe customer, financial information about the customer, informationrelated to an insurance claim, information related to one or more of thecustomer's insurance policies, information about an insured item (forexample, electronics, jewelry, automobiles, other kinds of vehicles, aswell as houses and other kinds of property), transcripts of a portion orall of a previous interaction, third party information (for example,information about a body shop the customer has used to repair avehicle), as well as possibly other kinds of information.

Information can be stored and/or retrieved from one or more databases(for example, database 142) associated with assistant 130 and/or claimmanagement system 100. Assistant 130 can retrieve all information fromprevious interactions involving a customer, or assistant 130 may targetparticular kinds of information for retrieval based on the type ofassistance that may be needed.

In step 310, assistant 130 can analyze information from the currentinteraction (monitored in step 302) and the previous interaction(retrieved in step 308) to generate an assistive action.

Assistant 130 can also make use of general patterns and trendsdetermined by analysis of previous interactions. These patterns andtrends, once identified by assistant 130, could be stored for later useand/or updating. As one example in the context of claim processing,assistant 130 could identify patterns in a customer's tendency to use aparticular body shop (over other available options) for getting theirvehicle fixed after accidents. During an insurance claim process,assistant 130 could alert agent 110 to this tendency so the agent canensure the customer gets his or her car fixed at their preferred bodyshop. As another example, analyzing trends in data retrieved overmultiple customers, an assistant could determine that customers above aparticular age (say, 40 years old) prefer using their own shops forvehicle repairs while younger customers prefer agents to simply tellthem where to take their cars. Based on this general information, anassistant could provide suggestions to an agent about which shop thecustomer is likely to prefer, based on his or her age.

In step 312, assistant 130 could notify the agent of the proposedassistive action and/or perform the assistive action as in step 208 ofthe process depicted in FIG. 2.

FIG. 4 is a schematic view depicting various possible communicationmodes between a claim management system and a customer, according to anembodiment. As used herein, the term “communication mode” refers to aparticular form of communication, such as audio based communication(i.e, a phone call), video based communication (i.e., a video call), andvarious modes of text based communication, as well as other modes ofanalog or digital communication. It may be appreciated that differentmodes of communication require different kinds of information to betransmitted, which may be associated with different kinds of datarepresentations or data formats. Thus, the type of data (i.e.,representation or format) used to transmit spoken words for a phone callwill be different from the type of data used to transmit typed words viaSMS messages.

Often, during an interaction with a customer, an agent may need tocommunicate with the customer using more than a single kind ofcommunication mode. Conventional CMR tools are specific to a single kindof communication mode (for example, email), and so are not useful insituations where an agent must switch communication modes as part ofcompleting a task. By contrast, the intelligent claims assistant of thepresent embodiments may be capable of performing assistive actionsacross various different communication modes.

In the embodiment shown in FIG. 4, agent 110 may communicate withcustomer 102 through a voice communication mode 402 for phone calls, anSMS mode 404 for texts, an email communication mode 406 for emails, amessaging application mode 408 for application specific messaging, asocial network mode 410 for posting and retrieving messages from socialnetwork sites, and an internet of things (IOT) mode 412 for sending andreceiving messages from IOT connected devices (for example, smartthermostats and smart appliances). Though not listed, in some cases anagent may also communicate using a separate video mode. In some cases,voice and video modes may be integrated as a single communication mode.

To provide assistance in situations where an agent may need tocommunicate with a customer using two or more communication modes, aninsurance claim assistant may include provisions for sending/receivingand interpreting information via various different communication modes.In the exemplary embodiment, assistant 130 may incorporate software forsending/receiving and interpreting information from any of thecommunication modes listed above and shown in FIG. 4.

FIG. 5 is a schematic view of a process for assisting an agent with acustomer interaction. More specifically, FIG. 5 depicts a process wherean AI assistant identifies a new communication mode for interacting witha customer. In step 502, assistant 130 monitors an interaction betweenan agent and a customer as in the processes of FIGS. 3-4. In this case,the interaction occurs by way of a first communication mode. Forexample, the interaction may occur by way of a telephone conversationbetween the agent and the customer. Next, in step 504 and step 506,assistant 130 analyzes information from the interaction and generates anassistive action.

At step 508, assistant 130 determines if the assistive action requires anew communication mode. If not, assistant 130 proceeds to step 510 tonotify the agent and/or perform the assistive action by way of the firstcommunication mode. If, during step 508, assistant 130 determines thatthe assistive action requires a new communication mode then assistant130 proceeds to step 512.

At step 512, assistant 130 initiates a second communication mode withthe customer. For example, assistant 130 could compose an email or SMStext as the second communication mode. In another situation where agent110 and customer 102 are communicating through text-based chat program(as the first communication mode), assistant 130 could initiate a phonecall between agent 110 and customer 102 (as the second communicationmode).

Following step 512, at step 514, assistant 130 may notify the agent ofthe proposed assistive action and/or perform the assistive action as instep 208 of the process depicted in FIG. 2. For example, assistant 130could send an email or text message that has been approved by agent 110.

FIGS. 6-8 depict an example of a situation where an insurance claimassistant performs an assistive action including opening a newcommunication mode with a customer in response to information from thecustomer-agent interaction. Referring to FIG. 6, agent 110 and customer102 are interacting by way of a phone call (that is, a firstcommunication mode 602) about an ongoing insurance claim. Assistant 130is monitoring their interaction (listening) in order to provideassistance. During the interaction customer 102 explains to agent 110that the body shop where her vehicle is supposed to be fixed hasrequested authorization from the insurance company to begin work on thevehicle. In response, agent 110 mentions that the customer will need toprovide the body shop with a particular form authorizing work. At thispoint, assistant 130, which has been monitoring the phone conversation,identifies a potential assistive action that can be taken to improve theefficiency of interaction (that is, reduce response time for the agentto complete a task) and the customer's satisfaction level. Specifically,assistant 130 identifies the customer's need for a particular form, andfurther determines that it can take actions to pre-fill the form andprepare an email for sending the form to the customer. As part of thisprocess, assistant 130 identifies the need to initiate a secondcommunication mode (an email mode) with the customer.

In FIG. 7, assistant 130 submits a draft email 702 to agent 110,attaching the pre-filled form. In addition to sending the email forreview (or populating the agent's inbox with an email draft), assistant130 may also provide a separate notification to agent 110. Thisnotification could include a pop-up notification on a computer or otherdevice that agent 110 is using while talking to customer 102.

In FIG. 8, following approval from agent 110, assistant 130 mayautomatically send email 702, including the attached form that thecustomer needs, to customer 102. That is, agent 110 initiates an emailcommunication mode (second communication mode 802) with customer 102 andsends information to customer 102 by way of this second communicationmode. In response, customer 102 acknowledges that she's received theform in her email inbox. Agent 110 then follows up to ask if there'sanything else the customer needs.

In the process depicted in FIGS. 6-8, assistant 130 provides seamlesssupport that is invisible to the customer. From the customer's point ofview, the interaction is more efficient, as there is no waiting for theagent to find and fill out the requisite form. This may generally resultin increased customer satisfaction with the insurance claim process.

An AI assistant may utilize one or more machine learning systems ormodels to generate assistive actions, including opening and utilizingnew communication modes between an agent and a customer. As used herein,the term “machine learning system” refers to any collection of one ormore machine learning algorithms. Some machine learning systems mayincorporate various different kinds of algorithms, as different tasksmay require different types of machine learning algorithms. Generally, amachine learning system will take input data and output one or morekinds of predicted values. The input data could take any form includingimage data, text data, audio data or various other kinds of data. Theoutput predicted values could be numbers taking on discrete orcontinuous values. The predicted values could also be discrete classes(for example, a “damaged” class and an “undamaged” class). Numericaloutputs could represent a probability that the input belongs to avarious classes. Moreover, it may be appreciated that the same machinelearning system can be used for training, testing and deployment, insome cases.

FIG. 9 is a schematic view of a machine learning system 900 that may beused to predict what type of new communication mode should be used tocommunicate information based on information from an interaction betweenan agent and a customer. More specifically, FIG. 9 depicts a trainingprocess for machine learning system 900, though it may be appreciatedthat this same system can also be used for testing and deployment.

Referring to FIG. 9, machine learning system 900 may be trained usingtraining interactions 902. Training interactions could be simulatedinteractions or historical interactions between agents and clients.Based on the information comprising the training interactions, machinelearning system 900 outputs a likely assistive action associated with aparticular communication mode. As examples, machine learning system 900includes a first output 911, a second output 912, a third output 913,and a fourth output 914. First output 911 corresponds to an action wherean assistant prepares and sends information in the form of SMS messages,or texts. Such a response may be appropriate when an agent needs to senda customer a small amount of information, such as a phone number for abody shop or a rental car company. Second output 912 corresponds to anaction where an assistant prepares and sends emails. Such a response maybe appropriate when an agent needs to send a large amount of informationand/or needs to send forms or other files, such as pdf forms. Thirdoutput 913 corresponds to an action where an assistant prepares andsends messages via a particular messaging application. In contrast toSMS messages that are standardized, many third party companies provideproprietary messaging applications used by individuals and/or companies.Such a response may be appropriate when the assistant is aware of acustomer's preference for communicating through a particular messagingapplication and/or if the messaging application is optimal for sendingparticular file types. Fourth output 914 corresponds to an action wherean assistant receives information from an Internet of Things enableddevice. Such a response may be appropriate when the assistant determinesthat an agent or customer needs information that is tracked by an IOTdevice in the customer's home or vehicle.

In some embodiments, various systems such as a machine learning systemcould be implemented on a centralized computer system. In someembodiments, a machine learning system could be provided through a cloudservice.

The processes and methods of the embodiments described in this detaileddescription and shown in the figures can be implemented using any kindof computing system having one or more central processing units (CPUs)and/or graphics processing units (GPUs). The processes and methods ofthe embodiments could also be implemented using special purposecircuitry such as an application specific integrated circuit (ASIC). Theprocesses and methods of the embodiments may also be implemented oncomputing systems including read only memory (ROM) and/or random accessmemory (RAM), which may be connected to one or more processing units.Examples of computing systems and devices include, but are not limitedto: servers, cellular phones, smart phones, tablet computers, notebookcomputers, e-book readers, laptop or desktop computers, all-in-onecomputers, as well as various kinds of digital media players.

The processes and methods of the embodiments can be stored asinstructions and/or data on non-transitory computer-readable media.Examples of media that can be used for storage include erasableprogrammable read-only memory (EPROM), electrically erasableprogrammable read-only memories (EEPROM), solid state drives, magneticdisks or tapes, optical disks, CD ROM disks and DVD-ROM disks.

The embodiments may utilize any kind of network for communicationbetween separate computing systems. A network can comprise anycombination of local area networks (LANs) and/or wide area networks(WANs), using both wired and wireless communication systems. A networkmay use various known communications technologies and/or protocols.Communication technologies can include, but are not limited to:Ethernet, 802.11, worldwide interoperability for microwave access(WiMAX), mobile broadband (such as CDMA, and LTE), digital subscriberline (DSL), cable internet access, satellite broadband, wireless ISP,fiber optic internet, as well as other wired and wireless technologies.Networking protocols used on a network may include transmission controlprotocol/Internet protocol (TCP/IP), multiprotocol label switching(MPLS), User Datagram Protocol (UDP), hypertext transport protocol(HTTP) and file transfer protocol (FTP) as well as other protocols.

Data exchanged over a network may be represented using technologiesand/or formats including hypertext markup language (HTML), extensiblemarkup language (XML), Atom, JavaScript Object Notation (JSON), YAML, aswell as other data exchange formats. In addition, informationtransferred over a network can be encrypted using conventionalencryption technologies such as secure sockets layer (SSL), transportlayer security (TLS), and Internet Protocol security (Ipsec).

While various embodiments of the invention have been described, thedescription is intended to be exemplary, rather than limiting, and itwill be apparent to those of ordinary skill in the art that many moreembodiments and implementations are possible that are within the scopeof the invention. Accordingly, the invention is not to be restrictedexcept in light of the attached claims and their equivalents. AIso,various modifications and changes may be made within the scope of theattached claims.

The invention claimed is:
 1. A method of assisting an agent ininteracting with a customer over multiple communication modes, theassistance being performed by an artificially intelligent assistant,comprising the steps of: analyzing information related to a plurality ofinteractions between at least one agent and at least one customer totrain the artificially intelligent assistant; based on the analyzedinformation, generating a plurality of assistive actions, wherein eachassistive action is associated with a particular communication mode thatis different for each assistive action; monitoring an interactionbetween an agent and a customer, the interaction occurring by a firstcommunication mode; analyzing information related to the interactionbetween the agent and the customer and generating a selected assistiveaction from the plurality of assistive actions, the selected assistiveaction requiring the use of a second communication mode that is theparticular communication mode associated with the selected assistiveaction; and performing the selected assistive action, wherein part ofperforming the selected assistive action includes establishingcommunication with the customer through the second communication mode,wherein the second communication mode is different than the firstcommunication mode.
 2. The method according to claim 1, wherein thefirst communication mode is a phone call.
 3. The method according toclaim 2, wherein the second communication mode is an email.
 4. Themethod according to claim 2, wherein the second communication mode is ashort message service.
 5. The method according to claim 2, wherein thesecond communication mode is mediated by a chat application.
 6. Themethod according to claim 1, wherein the first communication mode ismediated by a chat application.
 7. The method according to claim 6,wherein the second communication mode is a phone call.
 8. The methodaccording to claim 6, wherein the second communication mode is an email.9. The method according to claim 1, wherein the selected assistiveaction is chosen based on an amount of information that the agent issending to the customer.
 10. The method according to claim 1, whereinanalyzing information to train the artificially intelligent assistantincludes inputting the information into a machine learning model; andwherein the output of the machine learning model is used to generate theplurality of assistive actions.
 11. The method according to claim 1,wherein at least one of the plurality of assistive actions is associatedwith an Internet of Things enabled device belonging to the customer. 12.A system for assisting an agent in interacting with a customer overmultiple communication modes, the system comprising: a communicationnetwork configured to allow communication between an agent and acustomer over multiple communication modes; and an artificiallyintelligent assistant, wherein the artificially intelligent assistant isconfigured to: analyze information related to a plurality ofinteractions between at least one agent and at least one customer totrain the artificially intelligent assistant; based on the analyzedinformation, generate a plurality of assistive actions, wherein eachassistive action is associated with a particular communication mode thatis different for each assistive action; monitor an interaction betweenan agent and a customer, the interaction occurring by a firstcommunication mode; analyze information related to the interactionbetween the agent and the customer and generate a selected assistiveaction from the plurality of assistive actions, the selected assistiveaction requiring the use of a second communication mode that is theparticular communication mode associated with the selected assistiveaction; and perform the selected assistive action, wherein part ofperforming the selected assistive action includes establishingcommunication with the customer through the second communication mode,wherein the second communication mode is different than the firstcommunication mode.
 13. The system according to claim 12, wherein theartificially intelligent assistant is implemented on a centralizedcomputer system.
 14. The system according to claim 12, wherein theartificially intelligent assistant is implemented through a cloudcomputing service.
 15. The system according to claim 12, wherein theartificially intelligent assistant is configured to analyze informationto train the artificially intelligent assistant by inputting theinformation into a machine learning model; and wherein the output of themachine learning model is used to generate the plurality of assistiveactions.
 16. The system according to claim 12, further comprising atleast one Internet of Things enabled device belonging to the customer;and wherein at least one of the plurality of assistive actions isassociated with the Internet of Things enabled device belonging to thecustomer.